/**
 * YuTori PHP Framework 標準添付 jQuery用プラグイン
 * yutoriQuery
 *
 * Copyright (c) 2010 Makoto Yuki
 * http://bouyke.com/
 */

; (function ($) {
$.fn.extend ({
	/**
	 * 現在時刻の取得
	 * 参考：MooTools
	 */
	time: Date.now || function(){
		return +new Date;
	},
	
	/**
	 * Flashメディアを設置する
	 * 参考：MooTools
	 */
	flash: function (arg) {
		// プロパティ初期値とのマージ
		var options = {
			id: null,
			height: 1,
			width: 1,
			container: null,
			properties: {},
			params: {
				quality: 'high',
				allowScriptAccess: 'always',
				wMode: 'transparent',
				swLiveConnect: true
			},
			callBacks: {},
			vars: {}
		};
		jQuery.each(arg, function(i, val){
			options[i] = val;
		});

		var id = this.id = options.id || 'swf_' + jQuery.time();

		if (jQuery.browser.msie){
			options.properties.classid = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';
			options.params.movie = options.path;
		} else {
			options.properties.type = 'application/x-shockwave-flash';
			options.properties.data = options.path;
		}

		var build = '<object id="' + id + '"';

		for (var property in options.properties) build += ' ' + property + '="' + options.properties[property] + '"';
		build += '>';

		for (var param in options.params){
			if (options.params[param]) build += '<param name="' + param + '" value="' + options.params[param] + '" />';
		}
		build += '</object>';
		// TODO: この部分は後でinnerHTMLに変更しておくこと。
		this.append(build);

		return true;
	},

	/**
	 * Ajaxで指定URLを読み込み、現在の位置に挿入する
	 */
	insertURL: function (url) {
		var insertTo = this;
		$.ajax({
			'type': "GET",
			'url': url,
			'success': function(xml){
				var res = $(xml);
				$(insertTo).html (xml);
			},
			'error': function (Request, Status, e) {
				$(insertTo).html ("エラーが発生しました。\n Status:" + Request.statusText);
			}
		});
	}

});

})(jQuery);
